// 商品路由模块

// 加载模块
const express = require('express')
const goodsModel = require('../db/goodsModel.js')

// 创建路由表（空表）
const router = express.Router()

// 向路由表添加内容：

// 添加商品接口：http://localhost:8080/goods/add
router.post('/add',(req,res)=>{
    // 响应前端
    res.send({"code":1,"msg":"添加成功"})
})

// 删除商品接口：http://localhost:8080/goods/del
router.post('/del',(req,res)=>{
    // 响应前端
    res.send({"code":1,"msg":"删除成功"})
})

// 修改商品接口：http://localhost:8080/goods/update
router.post('/update',(req,res)=>{
    // 响应前端
    res.send({"code":1,"msg":"修改成功"})
})

// 查询商品接口：http://localhost:8080/goods/search
router.post('/search',(req,res)=>{
    // 响应前端
    res.send({"code":1,"msg":"查询成功"})
})

// 通过服务端代理请求接口：http://localhost:8080/goods/datas
// 接口地址：https://m.you.163.com/xhr/index.json
const https = require('https')
let url = 'https://m.you.163.com/xhr/index.json'
router.get('/datas',(req,res)=>{
    // 服务端没有跨域限制
    // 服务端去别人的服务器请求数据并返回给我们的前端
    let tmp = ''
    https.get(url,(result)=>{
        // 接收到数据片段时，会触发data事件
        result.on('data',(chunk)=>{
            // console.log( chunk )// 数据片段（Buffer二进制数据）
            // console.log( chunk+'' )// 数据片段（转成字符串数据）
            // console.log( '-----------------------------------' )

            // 将多段数据拼接起来
            tmp += chunk
        })
        // 当数据片段接收完成时，触发end事件
        result.on('end',()=>{
            // 响应前端
            res.send(tmp)
        })
    })
})

// CORS跨域资源共享接口：http://localhost:8080/goods/test1
// CORS是W3C标准，全称 跨域资源共享（Cross-Origin-Resource-Sharing）
// CORS允许浏览器向跨域服务器发送ajax请求
// 使用CORS需要满足两点：
// 1.浏览器支持CORS规范（IE10+支持）
// 2.服务端需要设置一些响应头（nodejs直接使用cors中间件）
router.get('/test1',(req,res)=>{
    // 响应前端
    res.send({"name":"张三","age":23,"sex":"男"})
})

// jsonp接口：http://localhost:8080/goods/test2
router.get('/test2',(req,res)=>{
    let {callback} = req.query
    console.log( callback )// 'hehe'

    // 响应前端
    // res.send('hello')
    // res.send('var hehe = "呵呵"')
    // res.send('test(123)')
    // res.send('test({"name":"张三","age":23,"sex":"男"})')

    let data = {"name":"张三","age":23,"sex":"男"}
    setTimeout(()=>{
        res.send(callback+'('+JSON.stringify(data)+')')
    },1000)
})

// 导出路由表
module.exports = router
